import { getJokeListAPI } from "../../api/joke"

// pages/joke/joke.ts
interface JokeData {
  list: string[]
}

Page({

  /**
   * 页面的初始数据
   */
  loading:false,   //定义加载中的状态值
  data: {
   list: [] as string[],
   refreshIng:false
  },
  // 下拉方法
 async refresh() {
    // 下拉刷新
    wx.showLoading({title:'刷新中...'})
    await this.getJokeList()
    this.setData({refreshIng:false})   //关闭下拉刷新状态
    wx.hideLoading()
  },
  // 加载下一页数据
 async loadData() {
    if(!this.loading){
        // 确定没有人占用!!!!你才可以占用
        wx.showToast({ title: '加载中...' })
        this.loading = true //占用该坑位
        // 加载下一页数据，追加到当前页数据的后面
        const list = await getJokeListAPI({ num: 10 })
        this.setData({
            list:[...this.data.list,...list]    //合并到一起
        })
        wx.hideLoading()
        this.loading = false
        // setData设置的是data中的数据，保证的这个数据变化驱动视图的变化
    }
  },
   
 async getJokeList () {
    const list = await getJokeListAPI({ num: 10 })
   this.setData({
     list
   })
    
 },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    this.getJokeList()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})